


XLWRITE Write to Microsoft Excel spreadsheet file using Java
XLWRITE(FILE,ARRAY) writes ARRAY to the first worksheet in the Excel
file named FILE, starting at cell A1. It aims to have exactly the same
behaviour as XLSWRITE. See also XLSWRITE.
XLWRITE(FILE,ARRAY,SHEET) writes to the specified worksheet.
XLWRITE(FILE,ARRAY,RANGE) writes to the rectangular region
specified by RANGE in the first worksheet of the file. Specify RANGE
using the syntax 'C1:C2', where C1 and C2 are opposing corners of the
region.
XLWRITE(FILE,ARRAY,SHEET,RANGE) writes to the specified SHEET and
RANGE.
STATUS = XLWRITE(FILE,ARRAY,SHEET,RANGE) returns the completion
status of the write operation: TRUE (logical 1) for success, FALSE
(logical 0) for failure. Inputs SHEET and RANGE are optional.
Input Arguments:
FILE String that specifies the file to write. If the file does not
exist, XLWRITE creates a file, determining the format based on
the specified extension. To create a file compatible with Excel
97-2003 software, specify an extension of '.xls'. If you do not
specify an extension, XLWRITE applies '.xls'.
ARRAY Two-dimensional logical, numeric or character array or, if each
cell contains a single element, a cell array.
SHEET Worksheet to write. One of the following:
* String that contains the worksheet name.
* Positive, integer-valued scalar indicating the worksheet
index.
If SHEET does not exist, XLWRITE adds a new sheet at the end
of the worksheet collection.
RANGE String that specifies a rectangular portion of the worksheet to
read. Not case sensitive. Use Excel A1 reference style.
* If you specify a SHEET, RANGE can either fit the size of
ARRAY or specify only the first cell (such as 'D2').
* If you do not specify a SHEET, RANGE must include both
corners and a colon character (:), even for a single cell
(such as 'D2:D2').
* If RANGE is larger than the size of ARRAY, Excel fills the
remainder of the region with #N/A. If RANGE is smaller than
the size of ARRAY, XLWRITE writes only the subset that fits
into RANGE to the file.
Note
* This function requires the POI library to be in your javapath.
To add the Apache POI Library execute commands:
(This assumes the POI lib files are in folder 'poi_library')
javaaddpath('poi_library/poi-3.8-20120326.jar');
javaaddpath('poi_library/poi-ooxml-3.8-20120326.jar');
javaaddpath('poi_library/poi-ooxml-schemas-3.8-20120326.jar');
javaaddpath('poi_library/xmlbeans-2.3.0.jar');
javaaddpath('poi_library/dom4j-1.6.1.jar');
* Excel converts Inf values to 65535. XLWRITE converts NaN values to
empty cells.
EXAMPLES
% Write a 7-element vector to testdata.xls:
xlwrite('testdata.xls', [12.7, 5.02, -98, 63.9, 0, -.2, 56])
% Write mixed text and numeric data to testdata2.xls
% starting at cell E1 of Sheet1:
d = {'Time','Temperature'; 12,98; 13,99; 14,97};
xlwrite('testdata2.xls', d, 1, 'E1')
REVISIONS
20121004 - First version using JExcelApi
20121101 - Modified to use POI library instead of JExcelApi (allows to
generate XLSX)
20121127 - Fixed bug: use existing rows if present, instead of
overwrite rows by default. Thanks to Dan & Jason.
20121204 - Fixed bug: if a numeric sheet is given & didn't exist,
an error was returned instead of creating the sheet. Thanks to Marianna
20130106 - Fixed bug: use existing cell if present, instead of
overwriting. This way original XLS formatting is kept & not
overwritten.
20130125 - Fixed bug & documentation. Incorrect working of NaN. Thanks Klaus
20130227 - Fixed bug when no sheet number given & added Stax to java
load. Thanks to Thierry
Copyright 2012-2013, Alec de Zegher
==============================================================================